const data = {
  name: "zhangsan",
  age: 20,
};

// proxy里面有两个参数
// 第一个是要监听的对象,第二个也是描述对象
const proxy = new Proxy(data, {
  get(target, propKey) {
    // 数据访问的时候调用
    // console.log(target, propKey);
    return target[propKey];
  },
  set(target, propKey, value) {
    console.log("set");
    // 数据修改的时候调用
    target[propKey] = value;
    // 页面的重新渲染
  },
});

// 得到了一个proxy实例以后，之后所有的操作是操作实例了
console.log(proxy.name);
console.log(proxy.age);
proxy.name = "lisi";
console.log(proxy.name);
